Apparatus for natural torso tracking and feedback for electronic interaction

ABSTRACT

An apparatus for natural torso tracking and feedback for electronic interaction, comprising a plurality of tethers each comprising a line with one end affixed to an attachment point at a fixed location distal from the body of a human user and with the other end being affixed to an attachment point proximal to the body of a human user, the proximal attachment point being configured to be worn or otherwise attached to a user&#39;s person or clothing, and at least a portion of the distal attachment points comprising a sensor configured to measure strain of an affixed tether.

CROSS-REFERENCE TO RELATED APPLICATIONS

The present application claims the benefit of and priority to U.S.provisional application Ser. No. 62/310,568 titled “APPARATUS FORNATURAL TORSO TRACKING AND FEEDBACK FOR ELECTRONIC INTERACTION” filed onMar. 18, 2016, the entire specification of which is incorporated hereinby reference in its entirety.

BACKGROUND OF THE INVENTION

Field of the Art

The disclosure relates to the field of computer interaction, and moreparticularly to the field of input and output methods for interactionwithin software applications.

Discussion of the State of the Art

Computer and electronic device input methods have traditionally centeredaround the use of keyboards and pointer devices for many years. However,with the rapidly-expanding virtual reality industry, new interactionmethods are being explored including a variety of controllers forgaming, wands, and motion-based input devices including gloves andcamera-based hand tracking. However, these devices all focus oninteracting with a user's hands, and ignore other parts of the body thatcould be used to improve interaction and immersion, while also expandingthe possibilities for data collection.

What is needed, is a means to track the position, orientation, andmovement of a user's whole body, to enable the use of their torso as anew input method. What is further needed, is a means to utilize a user'storso for two-way interaction, applying feedback to the user's body tofacilitate a “whole body immersion” that is not possible throughtraditional control arrangements.

SUMMARY OF THE INVENTION

Accordingly, the inventor has conceived and reduced to practice, in apreferred embodiment of the invention, an apparatus for natural torsotracking and feedback for electronic interaction.

According to a preferred embodiment of the invention, an apparatus fornatural torso tracking and feedback for electronic interaction,comprising a plurality of tethers each comprising a line with one endbeing affixed to an attachment point at a fixed location distal from thebody of a human user and with the other end being affixed to anattachment point proximal to the body of a human user, the proximalattachment point being configured to be worn or otherwise attached to auser's person or clothing, and at least a portion of the distalattachment points comprising a sensor configured to measure at leaststrain of an affixed tether, is disclosed.

BRIEF DESCRIPTION OF THE DRAWING FIGURES

The accompanying drawings illustrate several embodiments of theinvention and, together with the description, serve to explain theprinciples of the invention according to the embodiments. It will beappreciated by one skilled in the art that the particular embodimentsillustrated in the drawings are merely exemplary, and are not to beconsidered as limiting of the scope of the invention or the claimsherein in any way.

FIG. 1 is a diagram of an exemplary hardware arrangement of an apparatusfor natural torso tracking and feedback for electronic interactionaccording to a preferred embodiment of the invention, illustrating theuse of multiple tethers and a movable torso harness.

FIG. 2 is a diagram illustrating a variety of alternate tetherarrangements.

FIG. 3 is a diagram of an additional exemplary hardware arrangement ofan apparatus for natural torso tracking and feedback for electronicinteraction according to a preferred embodiment of the invention,illustrating the use of angle sensors to detect angled movement oftethers.

FIG. 4 is a block diagram illustrating an exemplary hardwarearchitecture of a computing device used in an embodiment of theinvention.

FIG. 5 is a block diagram illustrating an exemplary logical architecturefor a client device, according to an embodiment of the invention.

FIG. 6 is a block diagram showing an exemplary architectural arrangementof clients, servers, and external services, according to an embodimentof the invention.

FIG. 7 is another block diagram illustrating an exemplary hardwarearchitecture of a computing device used in various embodiments of theinvention.

DETAILED DESCRIPTION

The inventor has conceived, and reduced to practice, in a preferredembodiment of the invention, an apparatus for natural torso tracking andfeedback for electronic interaction.

One or more different inventions may be described in the presentapplication. Further, for one or more of the inventions describedherein, numerous alternative embodiments may be described; it should beappreciated that these are presented for illustrative purposes only andare not limiting of the inventions contained herein or the claimspresented herein in any way. One or more of the inventions may be widelyapplicable to numerous embodiments, as may be readily apparent from thedisclosure. In general, embodiments are described in sufficient detailto enable those skilled in the art to practice one or more of theinventions, and it should be appreciated that other embodiments may beutilized and that structural, logical, software, electrical and otherchanges may be made without departing from the scope of the particularinventions. Accordingly, one skilled in the art will recognize that oneor more of the inventions may be practiced with various modificationsand alterations. Particular features of one or more of the inventionsdescribed herein may be described with reference to one or moreparticular embodiments or figures that form a part of the presentdisclosure, and in which are shown, by way of illustration, specificembodiments of one or more of the inventions. It should be appreciated,however, that such features are not limited to usage in the one or moreparticular embodiments or figures with reference to which they aredescribed. The present disclosure is neither a literal description ofall embodiments of one or more of the inventions nor a listing offeatures of one or more of the inventions that must be present in allembodiments.

Headings of sections provided in this patent application and the titleof this patent application are for convenience only, and are not to betaken as limiting the disclosure in any way.

Devices that are in communication with each other need not be incontinuous communication with each other, unless expressly specifiedotherwise. In addition, devices that are in communication with eachother may communicate directly or indirectly through one or morecommunication means or intermediaries, logical or physical.

A description of an embodiment with several components in communicationwith each other does not imply that all such components are required. Tothe contrary, a variety of optional components may be described toillustrate a wide variety of possible embodiments of one or more of theinventions and in order to more fully illustrate one or more aspects ofthe inventions. Similarly, although process steps, method steps,algorithms or the like may be described in a sequential order, suchprocesses, methods and algorithms may generally be configured to work inalternate orders, unless specifically stated to the contrary. In otherwords, any sequence or order of steps that may be described in thispatent application does not, in and of itself, indicate a requirementthat the steps be performed in that order. The steps of describedprocesses may be performed in any order practical. Further, some stepsmay be performed simultaneously despite being described or implied asoccurring non-simultaneously (e.g., because one step is described afterthe other step). Moreover, the illustration of a process by itsdepiction in a drawing does not imply that the illustrated process isexclusive of other variations and modifications thereto, does not implythat the illustrated process or any of its steps are necessary to one ormore of the invention(s), and does not imply that the illustratedprocess is preferred. Also, steps are generally described once perembodiment, but this does not mean they must occur once, or that theymay only occur once each time a process, method, or algorithm is carriedout or executed. Some steps may be omitted in some embodiments or someoccurrences, or some steps may be executed more than once in a givenembodiment or occurrence.

When a single device or article is described herein, it will be readilyapparent that more than one device or article may be used in place of asingle device or article. Similarly, where more than one device orarticle is described herein, it will be readily apparent that a singledevice or article may be used in place of the more than one device orarticle.

The functionality or the features of a device may be alternativelyembodied by one or more other devices that are not explicitly describedas having such functionality or features. Thus, other embodiments of oneor more of the inventions need not include the device itself.

Techniques and mechanisms described or referenced herein will sometimesbe described in singular form for clarity. However, it should beappreciated that particular embodiments may include multiple iterationsof a technique or multiple instantiations of a mechanism unless notedotherwise. Process descriptions or blocks in figures should beunderstood as representing modules, segments, or portions of code whichinclude one or more executable instructions for implementing specificlogical functions or steps in the process. Alternate implementations areincluded within the scope of embodiments of the present invention inwhich, for example, functions may be executed out of order from thatshown or discussed, including substantially concurrently or in reverseorder, depending on the functionality involved, as would be understoodby those having ordinary skill in the art.

DETAILED DESCRIPTION OF EXEMPLARY EMBODIMENTS

FIG. 1 is a diagram of an exemplary hardware arrangement 100 for naturaltorso tracking and feedback for electronic interaction according to apreferred embodiment of the invention, illustrating the use of multipletethers 110 a-n and a movable torso harness 120. According to theembodiment, a plurality of tethers 110 a-n may be affixed orintegrally-formed as part of a handle or railing 130, such as handlebarsfound on exercise equipment such as a treadmill, elliptical trainer,stair-climbing machine, or the like. In alternate arrangements,specifically-designed equipment with integral tethers 110 a-n may beused, but it may be appreciated that a modular design with tethers 110a-n that may be affixed and removed freely may be desirable forfacilitating use with a variety of fitness equipment or structuralelements of a building, according to a user's particular use case orcircumstance. Tethers 110 a-n may then be affixed or integrally-formedto a torso harness 120, as illustrated in the form of a belt, that maybe worn by a user such that movement of their body affects tethers 110a-n and applies stress to them in a variety of manners. It should beappreciated that while a belt design for a torso harness 120 is shownfor clarity, a variety of physical arrangements may be used such asincluding (but not limited to) a vest, a series of harness-like strapssimilar to climbing or rappelling equipment, a backpack, straps designedto be worn on a user's body underneath or in place of clothing (forexample, for use in medical settings for collecting precise data) or aplurality of specially-formed clips or attachment points that may bereadily affixed to a user's clothing. Additionally, a torso harness 120may be constructed with movable parts, for example having an inner belt121 that permits a user some degree of motion within the harness 120without restricting their movement. Movement of inner belt 121 (or othermovable portions) may be measured in a variety of ways, such as usingaccelerometers, gyroscopes, or optical sensors, and this data may beused as interaction with software applications in addition to datacollected from tethers 110 a-n as described below.

As a user moves, their body naturally shifts position and orientation.These shifts may be detected and measured via tethers 110 a-n, forexample by detecting patterns of tension or strain on tethers 110 a-n toindicate body orientation, or by measuring small changes in strain ontethers 110 a-n to determine more precise movements such as body posturewhile a user is speaking, or specific characteristics of a user's strideor gait. Additionally, through varying the quantity and arrangement oftethers 110 a-n, more precise or specialized forms of movement may bedetected and measured (such as, for example, using a specificarrangement of multiple tethers connected to a particular area of auser's body to detect extremely small movements for medical diagnosis orfitness coaching). This data may be used as interaction with softwareapplications, such as for virtual reality applications as input for auser to control a character in a game. In such an arrangement, when auser moves, this movement may be translated to an in-game character oravatar to convey a more natural sense of interaction and presence. Forexample, in a multiplayer roleplaying game, this may be used tofacilitate nonverbal communication and recognition between players, astheir distinct mannerisms and gestures may be conveyed in the gamethrough detection of natural torso position and movement. In fitness orhealth applications, this data may be used to track and monitor a user'sposture or ergonomic qualities, or to assist in coaching them forspecific fitness activities such as holding a pose for yoga, stretching,or proper running form during use with a treadmill. In medicalapplications, this data may be used to assist in diagnosing injuries ordeficiencies that may require attention, such as by detecting anomaliesin movement or physiological adaptations to an unrecognized injury (suchas when a user subconsciously shifts their weight off an injured foot orknee, without consciously realizing an issue is present).

Through various arrangements of tethers 110 a-n and tether sensors (asdescribed below, referring to FIGS. 2-3), it may be possible to enable avariety of immersive ways for a user to interact with softwareapplications, as well as to receive haptic feedback from applications.For example, by detecting rotation, tension, stress, or angle of tethersa user may interact with applications such as virtual reality games orsimulations, by using natural body movements and positioning such asleaning, jumping, crouching, kneeling, turning, or shifting their weightin various directions to trigger actions within a software applicationconfigured to accept torso tracking input. By applying haptic feedbackof varying form and intensity (as is described in greater detail below,referring to FIG. 2), applications may provide physical indication to auser of software events, such as applying tension to resist movement,pulling or tugging on a tether to move or “jerk” a user in a direction,or varying feedback to multiple tethers such as tugging and releasing invarying order or sequence to simulate more complex effects such as (forexample, in a gaming use case) explosions, riding in a vehicle, orwalking through foliage.

It should be appreciated that while reference is made to virtual realityapplications, a wide variety of use cases may be possible according tothe embodiment. For example, torso tracking may be used for fitness andhealth applications, to monitor a user's posture or gait while walking,without the use of additional virtual reality equipment or software.

FIG. 2 is a diagram illustrating a variety of alternate tetherarrangements. According to various use cases and hardware arrangements,tethers 110 a-n may utilize a variety of purpose-driven designs asillustrated. For example, a “stretchable” tether 210 may be used tomeasure strain during a user's movement, as the tether 210 is stretchedor compressed (for example, using piezoelectric materials and measuringelectrical changes). Such an arrangement may be suitable for precisemeasurements, but may lack the mechanical strength or durability forgross movement detection or prolonged use. An alternate construction mayutilize a non-deforming tether 220 such as a steel cable or similarnon-stretching material. Instead of measuring strain on the tether 220,instead tether 220 may be permitted a degree of movement within anenclosure 222 (for example, an attachment point on a torso harness 120or handlebar 130), and the position or movement 221 of the tether 220may be measured such as via optical sensors. In a third exemplaryarrangement, a tether 230 may be wound about an axle or pulley 231, andmay be let out when force is applied during a user's movement. Rotationof the pulley 231 may be measured, or alternately a tension device suchas a coil spring may be utilized (not shown) and the tension or strainon that device may be measured as tether 230 is extended or retracted.In this manner, it may be appreciated that a variety of mechanical meansmay be used to facilitate tethers and attachments for use in detectingand measuring natural torso position and movement, and it should beappreciated that a variety of additional or alternate hardwarearrangements may be utilized according to the embodiments disclosedherein.

Additionally, through the use of various hardware construction itbecomes possible to utilize both “passive” tethers that merely measuremovement or strain, as well as “active” tethers that may applyresistance or movement to provide haptic feedback to a user. Forexample, in an arrangement utilizing a coiled spring or pulley 231, thespring or pulley 231 may be wound to retract a tether and direct orimpede a user's movement as desired. In this manner, various new formsof feedback-based interaction become possible, and in virtual realityuse cases user engagement and immersion are increased through morenatural physical feedback during their interaction.

By applying various forms and intensities of feedback using varioustether arrangements, a variety of feedback types may be used to providehaptic output to a user in response to software events. For example,tension on a tether may be used to simulate restrained movement such aswading through water or dense foliage, walking up an inclined surface,magnetic or gravitational forces, or other forms of physical resistanceor impedance that may be simulated through directional ornon-directional tension. Tugging, retracting, or pulling on a tether maybe used to simulate sudden forces such as recoil from gunfire,explosions, being grabbed or struck by a software entity such as anobject or character, deploying a parachute, bungee jumping, sliding orfalling, or other momentary forces or events that may be conveyed with atugging or pulling sensation. By utilizing various patterns of hapticfeedback, more complex events may be communicated to a user, such asriding on horseback or in a vehicle, standing on the deck of a ship atsea, turbulence in an aircraft, weather, or other virtual events thatmay be represented using haptic feedback. In this manner, virtualenvironments and events may be made more immersive and tangible for auser, both by enabling a user to interact using natural body movementsand positioning, as well as by providing haptic feedback in a mannerthat feels natural and expected to the user. For example, if a user iscontrolling a character in a gaming application through a first-personviewpoint, it would seem natural that when their character is struckthere would be a physical sensation corresponding to the event; however,this is not possible with traditional interaction devices, detractingfrom any sense of immersion or realism for the user. By providing thisphysical sensation alongside the virtual event, the experience becomesmore engaging and users are encouraged to interact more naturally astheir actions results in natural and believable feedback, meeting theirsubconscious expectations and avoiding excessive “immersion-breaking”moments, which in turn reduces the likelihood of users adopting unusualbehaviors or unhealthy posture as a result of adapting to limitedinteraction schema.

Haptic feedback may be provided to notify a user of non-gaming events,such as for desktop notifications for email or application updates, orto provide feedback on their posture for use in fitness or healthcoaching. For example, a user may be encouraged to maintain a particularstance, pose, or posture while working or for a set length of time (forexample, for a yoga exercise application), and if their posture deviatesfrom an acceptable range, feedback is provided to remind them to adjusttheir posture. This may be used in sports, fitness, health, or ergonomicapplications that need not utilize other aspects of virtual reality andmay operate as traditional software applications on nonspecializedcomputing hardware. For example, a user at their desk may use anergonomic training application that monitors their body posturethroughout the work day and provides haptic reminders to correct poorposture as it is detected, helping the user to maintain a healthyworking posture to reduce fatigue or injuries due to poor posture (forexample, repetitive-stress injuries that may be linked to poor posturewhile working at a computer).

FIG. 3 is a diagram of an additional exemplary hardware arrangement 300for natural torso tracking and feedback for electronic interactionaccording to a preferred embodiment of the invention, illustrating theuse of angle sensors 312,321 a-n to detect angled movement of a tether320. According to one exemplary arrangement, a tether 310 may be affixedto or passed through a rotating joint such as a ball bearing 311 orsimilar, to permit free angular movement. During movement, the angularmovement or deflection 312 of a protruding bar, rod, or tether segment313 may be measured (for example, using optical, magnetic, or othersensors) to determine the corresponding angle of tether 310. In thismanner, precise angle measurements may be collected without impedingrange of motion or introducing unnecessary mechanical complexity.

In an alternate hardware arrangement, the use of angle sensors 321 a-nenables tracking of a vertical angle of a tether 320, to detect andoptionally measure vertical movement or orientation of a user's torso.When tether 320 contacts a sensor 321 a-n, this may be registered andused to detect a general vertical movement (that is, whether the tetheris angled up or down). For more precise measurements, the specifichardware construction of a sensor 321 a-n may be varied, for exampleusing a pressure-sensing switch to detect how much force is applied anduse this measurement to determine the corresponding angle (as may bepossible given a tether 320 of known construction). It should beappreciated that various combinations of hardware may be used to providea desired method or degree of angle detection or measurement, forexample using a conductive tether 320 and a capacitive sensor 321 a-n todetect contact, or using a mechanical or rubber-dome switch (as arecommonly used in keyboard construction) to detect physical contactwithout a conductive tether 320.

The use of angle detection or measurement may expand interactionpossibilities to encompass more detailed and natural movements of auser's body. For example, if a user crouches, then all tethers 110 a-nmay detect a downward angle simultaneously. Additionally, data precisionor availability may be enhanced by combining input from multipleavailable sensors when possible (for example, utilizing adaptivesoftware to collect data from any sensors that it detects, withoutrequiring specific sensor types for operation), for example by combiningdata from tethers 110 a-n and hardware sensors such as an accelerometeror gyroscope, enabling multiple methods of achieving similar or variedtypes or precision levels of position or movement detection. Similarly,when a user jumps then all tethers may detect an upward anglesimultaneously. However, if a user leans in one direction, it may beappreciated that not all tethers 110 a-n will detect the same angle. Forexample, tethers 110 a-n in the direction the user is leaning may detecta downward angle, while those on the opposite side would detect anupward angle (due to the orientation of the user's torso and thus a worntorso harness 120). In this manner, more precise torso interaction maybe facilitated through improved detection and recognition of orientationand movement. Additionally, it may be appreciated that sensors 321 a-nmay be utilized for other angle measurements, such as to detecthorizontal angle. For example, if a user is wearing a non-rotating torsoharness 120, when they twist their body a similar stress may be appliedto all attached tethers 110 a-n. Without angle detection the precisenature of this movement will be vague, but with horizontal angledetection it becomes possible to recognize that all tethers 110 a-n arebeing strained in a similar direction (for example, in a clockwisepattern when viewed from above, as a user might view tethers 110 a-nduring use), and therefore interpret the interaction as a twistingmotion (rather than, for example, a user squatting or kneeling, whichmight apply a similar stress to the tethers 110 a-n but would havedifferent angle measurements).

Referring now to FIG. 4, there is shown a block diagram depicting anexemplary computing device 10 suitable for implementing at least aportion of the features or functionalities disclosed herein. Computingdevice 10 may be, for example, any one of the computing machines listedin the previous paragraph, or indeed any other electronic device capableof executing software- or hardware-based instructions according to oneor more programs stored in memory. Computing device 10 may be configuredto communicate with a plurality of other computing devices, such asclients or servers, over communications networks such as a wide areanetwork a metropolitan area network, a local area network, a wirelessnetwork, the Internet, or any other network, using known protocols forsuch communication, whether wireless or wired.

In one embodiment, computing device 10 includes one or more centralprocessing units (CPU) 12, one or more interfaces 15, and one or morebusses 14 (such as a peripheral component interconnect (PCI) bus). Whenacting under the control of appropriate software or firmware, CPU 12 maybe responsible for implementing specific functions associated with thefunctions of a specifically configured computing device or machine. Forexample, in at least one embodiment, a computing device 10 may beconfigured or designed to function as a server system utilizing CPU 12,local memory 11 and/or remote memory 16, and interface(s) 15. In atleast one embodiment, CPU 12 may be caused to perform one or more of thedifferent types of functions and/or operations under the control ofsoftware modules or components, which for example, may include anoperating system and any appropriate applications software, drivers, andthe like.

CPU 12 may include one or more processors 13 such as, for example, aprocessor from one of the Intel, ARM, Qualcomm, and AMD families ofmicroprocessors. In some embodiments, processors 13 may includespecially designed hardware such as application-specific integratedcircuits (ASICs), electrically erasable programmable read-only memories(EEPROMs), field-programmable gate arrays (FPGAs), and so forth, forcontrolling operations of computing device 10. In a specific embodiment,a local memory 11 (such as non-volatile random access memory (RAM)and/or read-only memory (ROM), including for example one or more levelsof cached memory) may also form part of CPU 12. However, there are manydifferent ways in which memory may be coupled to system 10. Memory 11may be used for a variety of purposes such as, for example, cachingand/or storing data, programming instructions, and the like. It shouldbe further appreciated that CPU 12 may be one of a variety ofsystem-on-a-chip (SOC) type hardware that may include additionalhardware such as memory or graphics processing chips, such as a QualcommSNAPDRAGON™ or Samsung EXYNOS™ CPU as are becoming increasingly commonin the art, such as for use in mobile devices or integrated devices.

As used herein, the term “processor” is not limited merely to thoseintegrated circuits referred to in the art as a processor, a mobileprocessor, or a microprocessor, but broadly refers to a microcontroller,a microcomputer, a programmable logic controller, anapplication-specific integrated circuit, and any other programmablecircuit.

In one embodiment, interfaces 15 are provided as network interface cards(NICs). Generally, NICs control the sending and receiving of datapackets over a computer network;

other types of interfaces 15 may for example support other peripheralsused with computing device 10. Among the interfaces that may be providedare Ethernet interfaces, frame relay interfaces, cable interfaces, DSLinterfaces, token ring interfaces, graphics interfaces, and the like. Inaddition, various types of interfaces may be provided such as, forexample, universal serial bus (USB), Serial, Ethernet, FIREWIRE™,THUNDERBOLT™, PCI, parallel, radio frequency (RF), BLUETOOTH™,near-field communications (e.g., using near-field magnetics), 802.11(WiFi), frame relay, TCP/IP, ISDN, fast Ethernet interfaces, GigabitEthernet interfaces, Serial ATA (SATA) or external SATA (ESATA)interfaces, high-definition multimedia interface (HDMI), digital visualinterface (DVI), analog or digital audio interfaces, asynchronoustransfer mode (ATM) interfaces, high-speed serial interface (HSSI)interfaces, Point of Sale (POS) interfaces, fiber data distributedinterfaces (FDDIs), and the like. Generally, such interfaces 15 mayinclude physical ports appropriate for communication with appropriatemedia. In some cases, they may also include an independent processor(such as a dedicated audio or video processor, as is common in the artfor high-fidelity A/V hardware interfaces) and, in some instances,volatile and/or non-volatile memory (e.g., RAM).

Although the system shown in FIG. 4 illustrates one specificarchitecture for a computing device 10 for implementing one or more ofthe inventions described herein, it is by no means the only devicearchitecture on which at least a portion of the features and techniquesdescribed herein may be implemented. For example, architectures havingone or any number of processors 13 may be used, and such processors 13may be present in a single device or distributed among any number ofdevices. In one embodiment, a single processor 13 handles communicationsas well as routing computations, while in other embodiments a separatededicated communications processor may be provided. In variousembodiments, different types of features or functionalities may beimplemented in a system according to the invention that includes aclient device (such as a tablet device or smartphone running clientsoftware) and server systems (such as a server system described in moredetail below).

Regardless of network device configuration, the system of the presentinvention may employ one or more memories or memory modules (such as,for example, remote memory block 16 and local memory 11) configured tostore data, program instructions for the general-purpose networkoperations, or other information relating to the functionality of theembodiments described herein (or any combinations of the above). Programinstructions may control execution of or comprise an operating systemand/or one or more applications, for example. Memory 16 or memories 11,16 may also be configured to store data structures, configuration data,encryption data, historical system operations information, or any otherspecific or generic non-program information described herein.

Because such information and program instructions may be employed toimplement one or more systems or methods described herein, at least somenetwork device embodiments may include nontransitory machine-readablestorage media, which, for example, may be configured or designed tostore program instructions, state information, and the like forperforming various operations described herein. Examples of suchnontransitory machine-readable storage media include, but are notlimited to, magnetic media such as hard disks, floppy disks, andmagnetic tape; optical media such as CD-ROM disks; magneto-optical mediasuch as optical disks, and hardware devices that are speciallyconfigured to store and perform program instructions, such as read-onlymemory devices (ROM), flash memory (as is common in mobile devices andintegrated systems), solid state drives (SSD) and “hybrid SSD” storagedrives that may combine physical components of solid state and hard diskdrives in a single hardware device (as are becoming increasingly commonin the art with regard to personal computers), memristor memory, randomaccess memory (RAM), and the like. It should be appreciated that suchstorage means may be integral and non-removable (such as RAM hardwaremodules that may be soldered onto a motherboard or otherwise integratedinto an electronic device), or they may be removable such as swappableflash memory modules (such as “thumb drives” or other removable mediadesigned for rapidly exchanging physical storage devices),“hot-swappable” hard disk drives or solid state drives, removableoptical storage discs, or other such removable media, and that suchintegral and removable storage media may be utilized interchangeably.Examples of program instructions include both object code, such as maybe produced by a compiler, machine code, such as may be produced by anassembler or a linker, byte code, such as may be generated by forexample a JAVA™ compiler and may be executed using a Java virtualmachine or equivalent, or files containing higher level code that may beexecuted by the computer using an interpreter (for example, scriptswritten in Python, Perl, Ruby, Groovy, or any other scripting language).

In some embodiments, systems according to the present invention may beimplemented on a standalone computing system. Referring now to FIG. 5,there is shown a block diagram depicting a typical exemplaryarchitecture of one or more embodiments or components thereof on astandalone computing system. Computing device 20 includes processors 21that may run software that carry out one or more functions orapplications of embodiments of the invention, such as for example aclient application 24. Processors 21 may carry out computinginstructions under control of an operating system 22 such as, forexample, a version of Microsoft's WINDOWS™ operating system, Apple's MacOS/X or iOS operating systems, some variety of the Linux operatingsystem, Google's ANDROID™ operating system, household gaming devicessuch as Microsoft XBOX™, Sony PLAYSTATION™, or virtual reality hardwaredevices such as Oculus RIFT™, HTC VIVE™, Samsung GEAR VR™, or the like.In many cases, one or more shared services 23 may be operable in system20, and may be useful for providing common services to clientapplications 24. Services 23 may for example be WINDOWS™ services,user-space common services in a Linux environment, or any other type ofcommon service architecture used with operating system 21. Input devices28 may be of any type suitable for receiving user input, including forexample a keyboard, touchscreen, microphone (for example, for voiceinput), mouse, touchpad, trackball, or any combination thereof. Outputdevices 27 may be of any type suitable for providing output to one ormore users, whether remote or local to system 20, and may include forexample one or more screens for visual output, speakers, printers, orany combination thereof. Memory 25 may be random-access memory havingany structure and architecture known in the art, for use by processors21, for example to run software. Storage devices 26 may be any magnetic,optical, mechanical, memristor, or electrical storage device for storageof data in digital form (such as those described above, referring toFIG. 4). Examples of storage devices 26 include flash memory, magnetichard drive, CD-ROM, and/or the like.

In some embodiments, systems of the present invention may be implementedon a distributed computing network, such as one having any number ofclients and/or servers. Referring now to FIG. 6, there is shown a blockdiagram depicting an exemplary architecture 30 for implementing at leasta portion of a system according to an embodiment of the invention on adistributed computing network. According to the embodiment, any numberof clients 33 may be provided. Each client 33 may run software forimplementing client-side portions of the present invention; clients maycomprise a system 20 such as that illustrated in FIG. 5. In addition,any number of servers 32 may be provided for handling requests receivedfrom one or more clients 33. Clients 33 and servers 32 may communicatewith one another via one or more electronic networks 31, which may be invarious embodiments any of the Internet, a wide area network, a mobiletelephony network (such as CDMA or GSM cellular networks), a wirelessnetwork (such as WiFi, Wimax, LTE, and so forth), or a local areanetwork (or indeed any network topology known in the art; the inventiondoes not prefer any one network topology over any other). Networks 31may be implemented using any known network protocols, including forexample wired and/or wireless protocols.

In addition, in some embodiments, servers 32 may call external services37 when needed to obtain additional information, or to refer toadditional data concerning a particular call. Communications withexternal services 37 may take place, for example, via one or morenetworks 31. In various embodiments, external services 37 may compriseweb-enabled services or functionality related to or installed on thehardware device itself. For example, in an embodiment where clientapplications 24 are implemented on a smartphone or other electronicdevice, client applications 24 may obtain information stored in a serversystem 32 in the cloud or on an external service 37 deployed on one ormore of a particular enterprise's or user's premises.

In some embodiments of the invention, clients 33 or servers 32 (or both)may make use of one or more specialized services or appliances that maybe deployed locally or remotely across one or more networks 31. Forexample, one or more databases 34 may be used or referred to by one ormore embodiments of the invention. It should be understood by one havingordinary skill in the art that databases 34 may be arranged in a widevariety of architectures and using a wide variety of data access andmanipulation means. For example, in various embodiments one or moredatabases 34 may comprise a relational database system using astructured query language (SQL), while others may comprise analternative data storage technology such as those referred to in the artas “NoSQL” (for example, Hadoop Cassandra, Google BigTable, and soforth). In some embodiments, variant database architectures such ascolumn-oriented databases, in-memory databases, clustered databases,distributed databases, or even flat file data repositories may be usedaccording to the invention. It will be appreciated by one havingordinary skill in the art that any combination of known or futuredatabase technologies may be used as appropriate, unless a specificdatabase technology or a specific arrangement of components is specifiedfor a particular embodiment herein. Moreover, it should be appreciatedthat the term “database” as used herein may refer to a physical databasemachine, a cluster of machines acting as a single database system, or alogical database within an overall database management system. Unless aspecific meaning is specified for a given use of the term “database”, itshould be construed to mean any of these senses of the word, all ofwhich are understood as a plain meaning of the term “database” by thosehaving ordinary skill in the art.

Similarly, most embodiments of the invention may make use of one or moresecurity systems 36 and configuration systems 35. Security andconfiguration management are common information technology (IT) and webfunctions, and some amount of each are generally associated with any ITor web systems. It should be understood by one having ordinary skill inthe art that any configuration or security subsystems known in the artnow or in the future may be used in conjunction with embodiments of theinvention without limitation, unless a specific security 36 orconfiguration system 35 or approach is specifically required by thedescription of any specific embodiment.

FIG. 7 shows an exemplary overview of a computer system 40 as may beused in any of the various locations throughout the system. It isexemplary of any computer that may execute code to process data. Variousmodifications and changes may be made to computer system 40 withoutdeparting from the broader scope of the system and method disclosedherein. Central processor unit (CPU) 41 is connected to bus 42, to whichbus is also connected memory 43, nonvolatile memory 44, display 47,input/output (I/O) unit 48, and network interface card (NIC) 53. I/Ounit 48 may, typically, be connected to keyboard 49, pointing device 50,hard disk 52, and real-time clock 51. NIC 53 connects to network 54,which may be the Internet or a local network, which local network may ormay not have connections to the Internet. Also shown as part of system40 is power supply unit 45 connected, in this example, to a mainalternating current (AC) supply 46. Not shown are batteries that couldbe present, and many other devices and modifications that are well knownbut are not applicable to the specific novel functions of the currentsystem and method disclosed herein. It should be appreciated that someor all components illustrated may be combined, such as in variousintegrated applications, for example Qualcomm or Samsungsystem-on-a-chip (SOC) devices, or whenever it may be appropriate tocombine multiple capabilities or functions into a single hardware device(for instance, in mobile devices such as smartphones, video gameconsoles, in-vehicle computer systems such as navigation or multimediasystems in automobiles, or other integrated hardware devices).

In various embodiments, functionality for implementing systems ormethods of the present invention may be distributed among any number ofclient and/or server components. For example, various software modulesmay be implemented for performing various functions in connection withthe present invention, and such modules may be variously implemented torun on server and/or client components.

The skilled person will be aware of a range of possible modifications ofthe various embodiments described above. Accordingly, the presentinvention is defined by the claims and their equivalents.

1. An apparatus for natural, three-dimensional torso tracking andfeedback for electronic interaction, comprising: a plurality of tetherseach comprising a line with one end being affixed to an attachment pointat a fixed location distal from the body of a human user and withanother end being affixed to an attachment point proximal to the body ofthe human user, the proximal attachment point being configured to beworn or otherwise attached to the human user's person or clothing, andat least a portion of the distal attachment points comprising a sensorconfigured to measure at least strain of the affixed tether; and aplurality of angle detection sensors, wherein at least a distalattachment point comprises an angle detection sensor configured tomeasure angular deflection of an affixed tether up or down with respectto a horizontal plane.
 2. The apparatus of claim 1, further wherein atleast an angle detection sensor further comprises an angle measurementdevice configured to measure the precise angle of an affixed tether. 3.The apparatus of claim 1, wherein an angle detection sensor comprises anelectrical switch.
 4. The apparatus of claim 3, wherein the electricalswitch comprises a mechanical leaf switch.
 5. The apparatus of claim 3,wherein the electrical switch comprises a rubber-dome switch.
 6. Theapparatus of claim 1, wherein an angle detection sensor comprises acapacitive sensor.
 7. The apparatus of claim 1, wherein at least adistal attachment point comprises a mechanism for applying tension to anaffixed tether.
 8. The apparatus of claim 7, wherein the mechanismcomprises at least a pulley.
 9. The apparatus of claim 7, wherein themechanism comprises at least a coiled spring.